#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author   : chancemate
# @DateTime : 2023/4/6
# @FileName : 1
# @SofrWare : PyCharm
# @User     : 彬宇
"""
安装包
pip install -i https://mirrors.aliyun.com/pypi/simple js2py
"""

# 引力魔方/万相台
import execjs, js2py

def nodejs_execjs(file_path, seed_token=""):
    """
    # 需要nodejs的环境，只能本地，或者放在远程开启服务
    解析引力魔方/万相台的dynamic_token
    :param file_path:       js文件路径
    :param seed_token:      seed_token,默认 空字符串，
    :return:                返回列表 ['432412208464456204424192', 1680767801244]，【seed_token， 时间戳】
    # 二次调用，seed_token不能为空，需要传值
    """
    js_code = open(file_path, encoding='utf-8').read()
    ctx = execjs.compile(js_code)
    result = ctx.call('gettoken', seed_token)
    return result


def nodejs_js2py(file_path, seed_token=""):
    """
    # 不需要nodejs的环境，可以本地，可以远程，不需要开启服务
    解析引力魔方/万相台的dynamic_token
    :param file_path:       js文件路径
    :param seed_token:      seed_token,默认 空字符串，
    :return:                返回列表 ['432412208464456204424192', 1680767801244]，【seed_token， 时间戳】
    # 二次调用，seed_token不能为空，需要传值
    """
    js_code = open(file_path, encoding='utf-8').read()
    content = js2py.EvalJs()
    content.execute(js_code)
    result = content.gettoken(seed_token)
    return result